const express = require('express');
const router = express.Router();
var mysql = require('mysql');
var models = require('../db');
const pool = mysql.createPool(models.mysql);; // 假设你的数据库连接池是这样引入的  

// 假设你有一个函数用于处理JSON响应  
const jsonWrite = (res, data, error) => {
  if (error) {
    return res.status(500).json({ error });
  }
  res.json(data);
};

// 验证函数（需要根据实际情况添加更多的验证逻辑）  
const validateParams = (params) => {
  const errors = [];

  if (!params.userName) {
    errors.push('用户名不能为空');
  }

  if (!params.password) {
    errors.push('密码不能为空');
  }

  return errors;
};

router.post('/getUserInfo', (req, res) => {
  const params = { ...req.body };
  const errors = validateParams(params);

  if (errors.length > 0) {
    return jsonWrite(res, null, errors.join(', '));
  }

  const sql = $sql.projectSql.getUserInfo; // 确保这个变量是已定义的  
  const selectParams = [params.userName, params.password];

  pool.query(sql, selectParams, (err, result) => {
    if (err) {
      console.error('数据库查询错误:', err);
      return jsonWrite(res, null, '数据库查询错误');
    }

    if (result.length > 0) {
      return jsonWrite(res, result);
    } else {
      return jsonWrite(res, null, '用户名或密码不正确');
    }
  });
});

module.exports = router;